home *** CD-ROM | disk | FTP | other *** search
/ Aminet 50 / Aminet 50 (2002)(GTI - Schatztruhe)[!][Aug 2002].iso / Aminet / dev / misc / GEngine.readme < prev    next >
Text File  |  2002-05-19  |  6KB  |  183 lines

  1. Short:    GEngine OOP library + misc GUI & font independent sources
  2. Author:   pdroldan@yahoo.com (Pablo Roldan)
  3. Uploader: pdroldan@yahoo.com (Pablo Roldan)
  4. Type:     dev/misc
  5. Replaces: dev/misc/geavl.lzh
  6.  
  7. --------------------------------------------------------------------
  8.  
  9.              GEngine shared library version 0.1
  10.                 (c)2001-2002 by Pablo Roldan
  11.  
  12. note: this archive replaces geavl.lzh (avl trees in PCQ Pascal)
  13.       which were not working at all (I prefer not to talk about it).
  14.  
  15.  
  16. 1. The library
  17.    -----------
  18.  
  19.    This library was thought at a first moment to gather all de graphic
  20.    and GUI routines that I had written. Later on, this become into a
  21.    library that allow AmigaOS1.3 users to create screen and font
  22.    sensitive GUIs. Therefore allowing 1.3 programs to show a correct
  23.    GUI in  both 1.3 and 2.0+ systems.
  24.  
  25.    Although this goal has not been achieved at the time,
  26.    the library incorporates:
  27.  
  28.    - Colour matching routines, as GetBestPen, that returns the closest
  29.      palette entry to the passed RGB value.
  30.  
  31.    - AVL trees routines, search, insert & delete criteria
  32.      customizable via hooks.
  33.  
  34.    - Memory pools. Auto-expand/shrink in user defined chunks
  35.  
  36.    - Object oriented system. A copy of BOOPSI, currently only the root
  37.      class implemented in the library.
  38.  
  39.    - Taglists routines, also a copy of the ones in utility.library
  40.  
  41. 2. The pascal sources
  42.    ------------------
  43.  
  44.    The pascal source include some test programs as well as gengine_d.i,
  45.    a include file containing the following:
  46.  
  47.    - A custom slider gadget, capable of displaying text inside the knob
  48.      just like the MUI ones. Also is font sensitive.
  49.      Note: The current implementation has problems with visualprefs.
  50.  
  51.    - A scalable & rotable vector graphics engine.
  52.  
  53.    - A 'event handler', not the best one, but does it's job until now.
  54.  
  55.    - A pop-up menu, font sensitive.
  56.  
  57.    The test programs:
  58.  
  59.    - testpop.p : This is the oldest one, it demoes the sliders,
  60.      vectors, pop-up menus and the color matching routines in
  61.      the library.
  62.  
  63.    - test1.p : Test the color matching routines, opens 2 windows,
  64.      the 1st contains 3 sliders, one for each primary color, at the
  65.      right is a rectangle filled of the nearest color in the palette
  66.      that matched the values on the sliders.
  67.      The 2nd window display the standard GUI colors, DrawInfo like.
  68.  
  69.    - test2.p : Test the scalable-rotable vector engine. Again the
  70.      program opens 2 windows, one contains a vector shape, the second
  71.      2 sliders that controls the angle and size of the vector shape
  72.      respectively.
  73.  
  74.    - test3.p : Test AVL trees, only text displayed on
  75.      the CLI window. This is not the best test, as I discover later.
  76.  
  77.    - testtag.p : Test both the taglist routines and class adding and
  78.      removing.
  79.  
  80.    - testiclass.p : The last one, test a pascal-implemented imageclass,
  81.      this time 4 sliders allows you to move an image object (currently
  82.      only a box). The image moves by using the methods GIM_ERASE,
  83.      GM_SET and GM_DRAW.
  84.  
  85. 3. The pascal includes
  86.    -------------------
  87.  
  88.    These are the PCQ pascal includes to use the library with this
  89.    compiler.
  90.    Some of these have pascal source of some routines that have not been
  91.    yet added to the shared library.
  92.  
  93. 4. Compiling
  94.    ---------
  95.  
  96.    The library has been written entirely in assembler, I use
  97.    phxass+blink to compile and link it.
  98.  
  99.    To compile the pascal test programs you will need the PCQ pascal
  100.    compiler, you will also need to compile gengine/asm/gengine_pcq.asm
  101.    to gengine/asm/gengine_pcq.lib (glue routines) and 
  102.    gengine/test/callhook.asm to gengine/asm/callhook.o (hook routines).
  103.    Then link the object code that created the pascal compiler with this
  104.    two files (and offcourse the pascal library).
  105.  
  106. 5. Compatibility
  107.    -------------
  108.  
  109.    Only an early version of the library has been tested on my real
  110.    Amiga 500. The entire development of the library has been doned on
  111.    a PeeCee running WinUAE.
  112.  
  113.    However, I has tested the library under various kickstarts and 
  114.    workbench configurations, and only found a visual problem with the
  115.    custom slider gadgets and the program visualprefs, this can be fixed
  116.    by making the slider BORDERLESS and letting it to refresh it's
  117.    border.
  118.  
  119. 6. The future
  120.    ----------
  121.  
  122.    Currently the development is temporarily stopped, as I'm busy with
  123.    other GUI/Gfx related project. When I finish it (or get bored of it,
  124.    whatever happens first) I will continue developing the library.
  125.  
  126.    Anyway... the future will bring us:
  127.  
  128.    - fixed color matching routines to use the same API that the
  129.      included in kickstart v39+.
  130.  
  131.    - further development will be done in C
  132.      (rewritting de Pascal code into asm is a REALLY slow process)
  133.  
  134.    - code will take more advantage of newer OS versions.
  135.  
  136.    - built in image class (among others)
  137.  
  138.    - finished gadget class and vector graphics engine converted into a
  139.      built in class.
  140.  
  141.    - better docs.
  142.  
  143.    - nicer test programs.
  144.  
  145.    - and a heap of things more...
  146.  
  147. 7. Distribution
  148.    ------------
  149.  
  150.    The contents of this archive are all FREEWARE, you can use the
  151.    library and the source codes as you want.
  152.    If you find usefull some of this, write a program that uses the
  153.    library or, for some obscure reason you want to continue developing
  154.    the library, pleas e-mail me at the address listed below.
  155.  
  156. 8. Contact
  157.    -------
  158.  
  159.    You can reach me via e-mail at:
  160.  
  161.      pdroldan@yahoo.com
  162.  
  163.    or by snail mail:
  164.  
  165.      Rivadavia 249 dto 6B
  166.      (9100) Trelew
  167.      Pcia. del Chubut
  168.      Argentina
  169.  
  170.    My web page:
  171.  
  172.      http://www.geocities.com/soft154i/index.htm
  173.  
  174.    As you can see at my web page I'm very insterested in old 8/16 bits
  175.    computers, so any donation, either hardware, software or
  176.    documentation *is* VERY welcome.
  177.  
  178. 9. Disclaimer
  179.    ---------
  180.  
  181.    No warranties of any kind are made as to the functionality of this
  182.    library and programs. You are using it at YOUR own risk.
  183.